package com.bangyo.core.entity;

import com.bangyo.core.action.OperatorActionLog;
import com.bangyo.core.action.OperatorActionLogFactory;

public abstract class AbstractEntity implements Entity
{
    public AbstractEntity()
    {
        super();
        setCreatorActionLog(OperatorActionLogFactory.newOperatorActionLog());
        setLastModifierActionLog(OperatorActionLogFactory
            .newOperatorActionLog());
    }

    private long poin = 0L;

    private boolean defunct = false;

    private long sequenceNumber = 0L;

    private OperatorActionLog creatorActionLog = null;

    private OperatorActionLog lastModifierActionLog = null;

    public long getPoin()
    {
        return poin;
    }

    public void setPoin(final long poin)
    {
        this.poin = poin;
    }

    public boolean isDefunct()
    {
        return defunct;
    }

    public void setDefunct(boolean defunct)
    {
        this.defunct = defunct;
    }

    public long getSequenceNumber()
    {
        return sequenceNumber;
    }

    public void setSequenceNumber(long sequenceNumber)
    {
        this.sequenceNumber = sequenceNumber;
    }

    public OperatorActionLog getCreatorActionLog()
    {
        return creatorActionLog;
    }

    public void setCreatorActionLog(OperatorActionLog creatorActionLog)
    {
        this.creatorActionLog = creatorActionLog;
    }

    public OperatorActionLog getLastModifierActionLog()
    {
        return lastModifierActionLog;
    }

    public void setLastModifierActionLog(OperatorActionLog lastModifierActionLog)
    {
        this.lastModifierActionLog = lastModifierActionLog;
    }

    public static final int SEQUENCE_NUMBER_TOP = 1000;
}